Exploiting SIMD for complex numerical predicates
نویسندگان
چکیده
We study the use of SIMD instructions to support complex conjunctive numerical predicates. Compared to previous studies, we aim to model more realistic use scenarios, where different data types, different comparison operations, and different predicate types can be mixed in a single filtering clause. Moreover, the evaluation of the predicates on a set of columns can take advantage of multiple processor cores for maximum speed. We find that the diversity of the predicates and the introduction of multiple threads pose significant challenges in modeling and optimizing complex predicates. We propose a code framework based on three alternative SIMD algorithms for conjunctive predicates. Then, we investigate cost models for both singlethreaded and multi-threaded evaluation of filtering predicates. Our experimental results on synthetic data show that an optimal SIMD plan can achieve up to 10.4x speedup over the best no SIMD plan, and up to 6.8x speedup over sub-optimal SIMD plans.
منابع مشابه
The Interlanguage of Persian Learners of Italian: a Focus on Complex Predicates
This paper aims at investigating the acquisition of Italian complex predicates by native speakers of Persian. Complex predication is not as pervasive a phenomenon in Italian as it is in Persian. Yet Italian native speakers use complex predicates productively; spontaneous data show that Persian learners of Italian seem to be perfectly aware of Italian complex predicates and use this familiar fea...
متن کاملVectorizing Database Column Scans with Complex Predicates
The performance of the full table scan is critical for the overall performance of column-store database systems such as the SAP HANA database. Compressing the underlying column data format is both an advantage and a challenge, because it reduces the data volume involved in a scan on one hand and introduces the need for decompression during the scan on the other hand. In previous work [26] we ha...
متن کاملFFT Compiler Techniques
This paper presents compiler technology that targets general purpose microprocessors augmented with SIMD execution units for exploiting data level parallelism. Numerical applications are accelerated by automatically vectorizing blocks of straight line code to be run on processors featuring two-way short vector SIMD extensions like Intel’s SSE 2 on Pentium 4, SSE 3 on Intel Prescott, AMD’s 3DNow...
متن کاملar X iv : h ep - l at / 9 71 00 06 v 1 1 O ct 1 99 7 1 Progress and status of APEmille
The APE project is one of a small number of physicist-driven efforts in Europe, Japan [1] and the US [2], aiming at the development of number crunchers optimised for LGT applications. APEmille, the latest generation of the APE family, is an evolution of the APE100 architecture [3] and has a roughly one order of magnitude higher peak performance. APEmille is a versatile massive-parallel processo...
متن کاملSIMD- and Cache-Friendly Algorithm for Sorting an Array of Structures
This paper describes our new algorithm for sorting an array of structures by efficiently exploiting the SIMD instructions and cache memory of today’s processors. Recently, multiway mergesort implemented with SIMD instructions has been used as a high-performance in-memory sorting algorithm for sorting integer values. For sorting an array of structures with SIMD instructions, a frequently used ap...
متن کامل